1. Field of the Invention
This invention pertains in general to mobile services, and more specifically to a cost control system for automated access to mobile services for processes running on mobile devices.
2. Description of the Related Art
Historically, mobile devices (e.g., cell phones, personal digital assistants or PDAs, pagers, and the like) have generally followed the principles of “service-on-demand” usage. For example, the user can knowingly choose to use a voice service when dialing or accepting an incoming call on a cell phone or the user can knowingly choose to use a data service when starting an Internet browser. Part of the user's determination resulting in a given choice is the cost of using the particular service. This cost is usually variable. The cost can depend, for example, on factors set forth by the mobile service provider (e.g., commonly an operator like CINGULAR® Wireless, T-MOBILE®, VERIZON® Wireless, etc.) that were chosen by the user when the user signed up for a mobile service in the form of a service plan. This service plan and the various costs of the services that are included in the plan can be consciously or subconsciously factored into the user's decision-making each time a service needs to be accessed. In short, the user typically has direct manual control over when, how, and what mobile services are accessed by the mobile device.
With the advent of more advanced mobile technologies and services (e.g., smartphones, 3rd Generation or 3G devices, and the like), the need for automated use of services (e.g., through programs provided by Symantec, such as LiveUpdate, Event Reporting, License Management, etc.) by devices becomes increasingly important. For example, users may wish to include antivirus technologies and services on mobile devices, and it may be useful to have these technologies perform some automated functions that rely on mobile services (e.g., automatic download of virus definitions, automatic transmittal of event reports containing information about virus scans, etc.). As another example, users may wish to include applications and services for automatic download of software updates when such updates become available. These types of technologies are often processes running in the background of devices, and the technologies may need to periodically access mobile data services to perform their work.
Usability for those programs on mobile devices can become an issue due to the “service-on-demand” concepts around which mobile devices are commonly built. It may not be desirable for these programs to be able to regularly access any type of mobile data service whenever the service is needed since fees accompany many of these services. Thus, it may be preferable to specify when the programs should be allowed to access certain services. On one hand, prompting the user to determine whether it is okay to access a data service to perform work at a scheduled time or upon a certain event negates any automation behind those programs' designs and also causes extra hassle for the user. On the other hand, fully automating the programs to access data services at any time could incur costs that the user may not always find justified. For example, it may be acceptable for the user to pay extra fees in roaming charges to get the latest virus definitions, but it may not be acceptable to pay extra fees to send an event report containing the last time a full virus scan was performed. Thus, there is a dilemma regarding whether (and when) to bother the user in these situations. This dilemma will become more and more prevalent as the worlds of mobile-technology and mobile services evolve.
Therefore, there is a need in the art for a user-friendly cost control system for automated access to mobile services for background processes running on mobile devices, where the system minimizes the interruption caused to the user while still allowing the background processes to perform work in a more cost-effective manner.